# 多重继承
class Runnable(object):
    def run(self):
        print("Running.....")
class Flyable(object):
    def fly(self):
        print('Flying....')
class Animal(object):
    pass
# 哺乳动物类
class Mammal(Animal):
    pass
# 鸟类
class Bird(Animal):
    pass
class Dog(Mammal,Runnable):
    pass
class Cat(Mammal,Runnable):
    pass
# 蝙蝠
class Bat(Mammal,Flyable):  
    pass
# 鹦鹉
class Parrot(Bird,Flyable):  
    pass
# 鸵鸟
class Ostrich(Bird,Runnable):  
    pass
# MixIn
# 在设计类的继承关系时，通常，主线都是单一继承下来的，例如，Ostrich继承自Bird。但是，如果需要“混入”额外的功能，通过多重继承就可以实现，比如，让Ostrich除了继承自Bird外，再同时继承Runnable。这种设计通常称之为MixIn。
#MixIn的目的就是给一个类增加多个功能,这样，在设计类的时候，我们优先考虑通过多重继承来组合多个MixIn的功能，而不是设计多层次的复杂的继承关系。






